package nl.infodation.emr.pricingservice.business;

import java.util.Hashtable;
import java.util.List;

import nl.infodation.emr.pricingservice.entity.Environment;
import nl.infodation.emr.pricingservice.entity.Role;
import nl.infodation.emr.pricingservice.entity.SystemDetail;
import nl.infodation.emr.pricingservice.entity.SystemValueRef;

/**
 * @author SUCCESS\tungo
 *
 */
public interface SystemBusiness {
	
	/**
	 * Get Environment by ID
	 * @param id
	 * @return
	 */
	Environment getEnvironment(Integer id);
	
	/**
	 * Get SystemValueRef by ID
	 * @param id
	 * @return
	 */
	SystemValueRef getSysValRef(Integer id);
	
	/**
	 * Find SystemDetail
	 * @param roleName
	 * @param langId
	 * @param sysNames
	 * @return
	 */
	Hashtable<String, List<SystemDetail>> findSystemDetailByRoleAndLangAndSys(String roleName, Integer langId, String...sysNames);
	
	/**
	 * Find all Role
	 * @return
	 */
	List<Role> findAllRoles();

}
